import request from '@/utils/request'

// 查询模型训练任务列表
export function listTrainTask(query) {
  return request({
    url: '/model/trainTask/list',
    method: 'get',
    params: query
  })
}

// 查询模型训练任务详细
export function getTrainTask(id) {
  return request({
    url: `/model/trainTask/${id}`,
    method: 'get'
  })
}

// 新增模型训练任务
export function addTrainTask(data) {
  return request({
    url: '/model/trainTask',
    method: 'post',
    data: data,
    headers: {
      'Content-Type': 'multipart/form-data'
    }
  })
}

// 修改模型训练任务
export function updateTrainTask(data) {
  return request({
    url: '/model/trainTask',
    method: 'put',
    data: data
  })
}

// 删除模型训练任务
export function deleteTrainTask(ids) {
  return request({
    url: `/model/trainTask/${ids}`,
    method: 'delete'
  })
}

// 下载训练好的模型
export function downloadModel(id) {
  return request({
    url: `/model/trainTask/download/${id}`,
    method: 'get',
    responseType: 'blob'
  })
}

// 启动训练任务
export function startTrainTask(id) {
  return request({
    url: `/model/trainTask/start/${id}`,
    method: 'post'
  })
}

// 停止训练任务
export function stopTrainTask(id) {
  return request({
    url: `/model/trainTask/stop/${id}`,
    method: 'post'
  })
}

// 获取训练日志
export function getTrainLogs(id) {
  return request({
    url: `/model/trainTask/logs/${id}`,
    method: 'get'
  })
}